A computer system may have a variety of hardware devices that request and share resources (e.g., memory and processors) of the system. Device drivers typically act as bridges between the hardware devices and software managing the resources. Through the device drivers, the software may be able to determine which devices are on the system, the devices may request resources, and the devices may be granted the resources from the software.
However, a memory controller typically does not have the ability to share resources like other hardware devices or to be used by another entity for sharing resources. Moreover, the memory controller typically does not have a device driver to share resources like other hardware devices.